home *** CD-ROM | disk | FTP | other *** search
/ Professional Soft Collection 1.02 / Professional Soft Collection 1.02.iso / msmous10 / disk1 / mouse.ms_ / mouse.ms
Encoding:
Text File  |  1994-09-20  |  17.8 KB  |  612 lines

  1. '*****************************************************************************
  2. '*****************************************************************************
  3. ''i% = DoMsgBox("", "DEBUG", MB_OK+MB_ICONHAND)
  4.  
  5. ''*********   Dialog ID's  ************************
  6. CONST WELCOME = 100
  7. CONST ASKQUIT = 200
  8. CONST DESTPATH = 300
  9. CONST EXITFAILURE = 400
  10. CONST REMOVEDISK = 450
  11. CONST EXITQUIT = 600
  12. CONST WARNING = 675
  13. CONST NOTADMIN = 700
  14. CONST APPHELP = 900
  15. CONST OPTIONS = 1000
  16. CONST EXITSUCCESS = 1300
  17. CONST PREINSTALLED = 1400
  18. CONST SUOPTION = 1800
  19. CONST MISCOPT      = 5200
  20. CONST POINTOPT     = 5300
  21. CONST CUSTINST     = 6200
  22. CONST BILLBOARD = 4545
  23. CONST BADPATH = 6400
  24. CONST MOUSETYPE = 1600
  25. CONST CONTYPE = 1700
  26. CONST NOSPACEEXPRESS = 6600
  27. CONST CDALREADYUSED = 7100
  28. CONST CDBADFILE = 7200
  29. CONST CDCONFIRMINFO = 7300
  30. CONST CDGETNAME = 7400
  31. GLOBAL COMDLL$
  32. GLOBAL DEFDIR$
  33. GLOBAL HELPPROC$
  34. GLOBAL SETUPINF$
  35. GLOBAL WINDRIVE$
  36. GLOBAL SRCDIR$
  37. GLOBAL OLDDEST$
  38. GLOBAL DESTDIR$
  39. GLOBAL WINTYPE%
  40. GLOBAL NEWDIR%
  41. GLOBAL OEMTYPE%
  42. GLOBAL DLG%
  43. GLOBAL MSENV$
  44. GLOBAL HWIN%
  45. GLOBAL TKWIN%
  46. GLOBAL RetCode%
  47. GLOBAL szName$
  48. GLOBAL szOrg$
  49. GLOBAL BADOPS%
  50. GLOBAL COSTLIST&
  51. GLOBAL POINTCOST&
  52. GLOBAL POINTCOSTOLD&
  53. GLOBAL POINTA&
  54. GLOBAL POINTB&
  55. GLOBAL POINTC&
  56. GLOBAL POINTD&
  57. GLOBAL POINTE&
  58. GLOBAL POINTF&
  59. GLOBAL POINTG&
  60. GLOBAL POINTH&
  61. GLOBAL TOOLCOST&
  62. GLOBAL TOOLCOSTOLD&
  63. GLOBAL MISCCOST&
  64. GLOBAL MISCCOSTOLD&
  65. GLOBAL DOSPOINT&
  66. GLOBAL DOSPOINTOLD&
  67. GLOBAL DOSDRV&
  68. GLOBAL DOSDRVOLD&
  69. GLOBAL ONHELP&
  70. GLOBAL ONHELPOLD&
  71. GLOBAL MISCA&
  72. GLOBAL MISCB&
  73. GLOBAL MOTYPE$
  74. GLOBAL CHECKSTATES$
  75. GLOBAL STATUSTEXT$
  76. GLOBAL DRIVETEXT$
  77. GLOBAL CUSTOM1$
  78. GLOBAL CUSTOM2$
  79. GLOBAL CUSTOM3$
  80. GLOBAL CUSTOM4$
  81. GLOBAL CUSTOM5$
  82. GLOBAL CUSTOM6$
  83. GLOBAL POINTER1$
  84. GLOBAL POINTER2$
  85. GLOBAL POINTER3$
  86. GLOBAL POINTER4$
  87. GLOBAL POINTER5$
  88. GLOBAL POINTER6$
  89. GLOBAL POINTER7$
  90. GLOBAL POINTER8$
  91. GLOBAL MISC1$
  92. GLOBAL MISC2$
  93.  
  94. DECLARE SUB SetDriveStatus
  95. DECLARE SUB CustomOptions
  96. DECLARE SUB PointerOptions
  97. DECLARE SUB MiscOptions
  98. DECLARE SUB FillCopyStates
  99. DECLARE SUB SetPointStatus (TypeOp$, KeyOp$)
  100. DECLARE SUB SetMiscStatus (TypeOp$, KeyOp$)
  101.  
  102. DECLARE FUNCTION ExitWindows LIB "USER" (szBuf&, Buf%) AS INTEGER
  103. DECLARE FUNCTION WriteProfileString LIB "KERNEL" (szSec$, szLine$, szVal$)
  104. DECLARE FUNCTION SendMessage LIB "USER" (handle%,Num%,Mess%,lParam&) AS LONG
  105. DECLARE FUNCTION PostMessage LIB "USER" (handle%,Num%,Mess%,lParam&) AS INTEGER
  106. DECLARE FUNCTION ShowWindow LIB "USER" (handle%, flag%) AS INTEGER
  107. DECLARE FUNCTION WinHelp LIB "USER" (handle%,szPath$,Num%,lParam&) AS INTEGER
  108. DECLARE FUNCTION WinExec LIB "KERNEL" (szBuf$,Num%) AS INTEGER
  109. DECLARE FUNCTION SetAutoBat LIB "mscuistf.dll" (szPath$, Flags%) AS INTEGER
  110. DECLARE FUNCTION Extract LIB "mscuistf.dll" (szPath$) AS INTEGER
  111. '$INCLUDE 'setupapi.inc'
  112. '$INCLUDE 'msdetect.inc'
  113. '$INCLUDE 'common.inc'
  114.  
  115. INIT:
  116.  
  117.     TKWIN% = FindWindow("Stuff-Shell", NULL)
  118.     kbd& = ShowWindow(TKWIN%, 3)
  119.     DEFDIR$ = ":\MSINPUT"
  120.     COMDLL$ = "mscuistf.dll"
  121.     HELPPROC$ = "FHelpDlgProc"
  122.     InitialIzation
  123.  
  124.     FillCopyStates
  125.  
  126. WELCOME:
  127.  
  128.     sz$ = UIStartDlg(COMDLL$, WELCOME, "FInfoDlgProc", 0, "")
  129.     IF sz$ = "CONTINUE" THEN
  130.         UIPop 1
  131.     ELSEIF sz$ = "CANCEL" THEN
  132.         sz$ = UIStartDlg(COMDLL$, APPHELP, "FInfoDlgProc", 0, "")
  133.         UIPop 1
  134.         GOTO WELCOME
  135.     ELSEIF sz$ = "BACK" THEN
  136.         x% = WinHelp(TKWIN%, SETUPINF$ + "PTSETUP.HLP", 1, 30)
  137.         GOTO WELCOME
  138.     ELSE
  139.         ASKEXIT
  140.         GOTO WELCOME
  141.     END IF
  142.  
  143.     IF OEMTYPE% = 1 THEN
  144.         GOTO SETPATH
  145.     ENDIF
  146.  
  147.     Disinsentive
  148.     FindOldSoftWare
  149.  
  150.     IF DLG% = PREINSTALLED THEN
  151.        AddListItem "ConfirmTextIn", DESTDIR$
  152.        sz$ = UIStartDlg(COMDLL$, 666, "FConfirmDlgProc", 0, "")
  153.        RemoveSymbol "ConfirmTextIn"                                
  154.        UIPop 1
  155.        IF sz$ = "CONTINUE" THEN
  156.            GOTO XSTALL
  157.        END IF
  158.     ELSE
  159.        sz$ = UIStartDlg(COMDLL$, SUOPTION, "FInfoDlgProc", 0, "")
  160.        UIPop 1
  161.        IF sz$ = "CONTINUE" THEN
  162.            GOTO SETPATH
  163.        END IF
  164.     ENDIF
  165.     
  166. CUSTOMINSTALL:
  167.  
  168.     CustomOptions
  169.     GOTO INSTALL
  170.  
  171. SETPATH:
  172.  
  173.     GetPath
  174.  
  175. XSTALL:
  176.     need& = COSTLIST& + POINTCOST& + TOOLCOST& + DOSDRV& + DOSPOINT& + ONHELP& + MISCCOST&
  177.     drive$ = MID$(DESTDIR$, 1, 1)
  178.     IF need& > GetFreeSpaceForDrive(drive$) THEN
  179.         sz$ = UIStartDlg(COMDLL$, NOSPACEEXPRESS, "FInfoDlgProc", 0, "")
  180.         UIPop 1
  181.         GOTO CUSTOMINSTALL
  182.     ENDIF
  183.  
  184. INSTALL:
  185.  
  186.     MSENV$ = DESTDIR$
  187.     DESTDIR$ = MakePath(MSENV$,"MOUSE")
  188.  
  189.     Cursor% = ShowWaitCursor()
  190.     FillCopyList
  191.     AddToBillBoardList COMDLL$, BILLBOARD, "BMDlgProc", 100
  192.     SetCopyGaugePosition 140, 120
  193.     CreateDir MSENV$, cmoNone
  194.     CreateDir DESTDIR$, cmoNone
  195.     CreateDir DESTDIR$ + "\EFFECTS", cmoNone
  196.     RestoreCursor Cursor%
  197.     CopyFilesInCopyList
  198.     
  199.     Cursor% = ShowWaitCursor()
  200.     IF CUSTOM1$ = "ON" THEN
  201.         IF POINTER6$ = "ON" THEN
  202.             x% = Extract(DESTDIR$ + "\EFFECTS\APERANCE.SQU")
  203.         ENDIF
  204.         IF POINTER1$ = "ON" THEN
  205.             x% = Extract(DESTDIR$ + "\EFFECTS\SPLEFECT.SQU")
  206.         ENDIF
  207.     ENDIF
  208.     x% = GetString(8004)
  209.     szt$ = GetSymbolValue("SetupString")
  210.     x% = GetString(8005)
  211.     szMM$ = GetSymbolValue("SetupString")
  212.     x% = GetString(8006)
  213.     szTB$ = GetSymbolValue("SetupString")
  214.     x% = GetString(8007)
  215.     szRM$ = GetSymbolValue("SetupString")
  216.     x% = GetString(8009)
  217.     szRE$ = GetSymbolValue("SetupString")
  218.     FillIniFile
  219.     RestoreCursor Cursor%
  220.  
  221.     CreateProgmanGroup szt$, "", cmoNone
  222.     ShowProgmanGroup szt$, 1, cmoNone
  223.     IF CUSTOM1$ = "ON" THEN
  224.         x% = SetRunLine(MakePath(MSENV$,"POINTER.EXE ") + MakePath(DESTDIR$,"MOUSEX16.EXE "))'' Must have space at the end of string!
  225.         CreateProgmanItem szt$, szMM$, MakePath(DESTDIR$, "MOUSEX16.EXE"), "", cmoOverwrite
  226.     ENDIF
  227.     IF CUSTOM2$ = "ON" THEN
  228.         CreateProgmanItem szt$, szTB$, MakePath(DESTDIR$, "INBAR16.EXE"), "", cmoOverwrite
  229.     ENDIF
  230.     CreateProgmanItem szt$, szRM$, MakePath(DESTDIR$, szRE$), "", cmoOverwrite
  231.  
  232.     szt$ = ""
  233.     szTB$ = ""
  234.     szMM$ = ""
  235.     szRM$ = ""
  236.     szRE$ = ""
  237.  
  238. AUTOBAT:
  239.  
  240.     IF CUSTOM4$ = "ON" THEN
  241.         i% = 1
  242.     ELSE
  243.         i% = 0
  244.     ENDIF
  245.     i% = SetAutoBat(MSENV$, i%)
  246.  
  247. QUIT:
  248.     ON ERROR GOTO ERRQUIT
  249.     QuitInstall
  250.     END
  251.  
  252. ERRQUIT:
  253.     x% = GetString(8003)
  254.     sz$ = GetSymbolValue("SetupString")
  255.     x% = GetString(8001)
  256.     sx$ = GetSymbolValue("SetupString")
  257.     i% = DoMsgBox(sz$, sx$, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  258.     RemoveSymbol "SetupString"
  259.     END
  260.  
  261. '*************************************************************************
  262. '*************************************************************************
  263. SUB CustomOptions STATIC
  264.     
  265. CUSTINST:
  266.     ReplaceListItem STATUSTEXT$, 1, STR$(POINTCOST&)
  267.     ReplaceListItem STATUSTEXT$, 2, STR$(TOOLCOST&)
  268.     ReplaceListItem STATUSTEXT$, 3, STR$(DOSPOINT&)
  269.     ReplaceListItem STATUSTEXT$, 4, STR$(DOSDRV&)
  270.     ReplaceListItem STATUSTEXT$, 5, STR$(ONHELP&)
  271.     ReplaceListItem STATUSTEXT$, 6, STR$(MISCCOST&)
  272.     SetDriveStatus
  273.     sz$ = UIStartDlg(COMDLL$, CUSTINST, "FCustInstDlgProc", 0, "")
  274.  
  275.     IF sz$ = "CONTINUE" THEN
  276.         need& = COSTLIST& + POINTCOST& + TOOLCOST& + DOSDRV& + DOSPOINT& + ONHELP& + MISCCOST&
  277.         drive$ = MID$(DESTDIR$, 1, 1)
  278.         IF need& > GetFreeSpaceForDrive(drive$) THEN
  279.             sz$ = UIStartDlg(COMDLL$, NOSPACEEXPRESS, "FInfoDlgProc", 0, "")
  280.             UIPop 1
  281.             GOTO CUSTINST
  282.         ENDIF
  283.         UIPop 1
  284.     ELSEIF sz$ = "BTN1" THEN
  285.         PointerOptions
  286.         GOTO CUSTINST
  287.     ELSEIF sz$ = "BTN5" THEN
  288.         MiscOptions
  289.         GOTO CUSTINST
  290.     ELSEIF sz$ = "PATH" THEN
  291.         GetPath
  292.         GOTO CUSTINST
  293.     ELSEIF sz$ = "CHK1" THEN
  294.         CUSTOM1$ = GetListItem(CHECKSTATES$,1)
  295.         IF CUSTOM1$ = "ON" THEN
  296.             POINTCOST& = POINTCOSTOLD&
  297.         ELSE
  298.             POINTCOSTOLD& = POINTCOST&
  299.             POINTCOST& = 0
  300.         ENDIF
  301.         GOTO CUSTINST
  302.     ELSEIF sz$ = "CHK2" THEN
  303.         CUSTOM2$ = GetListItem(CHECKSTATES$,2)
  304.         IF CUSTOM2$ = "ON" THEN
  305.             TOOLCOST& = TOOLCOSTOLD&
  306.         ELSE
  307.             TOOLCOSTOLD& = TOOLCOST&
  308.             TOOLCOST& = 0
  309.         ENDIF
  310.         GOTO CUSTINST
  311.     ELSEIF sz$ = "CHK3" THEN
  312.         CUSTOM3$ = GetListItem(CHECKSTATES$,3)
  313.         IF CUSTOM3$ = "ON" THEN
  314.             DOSPOINT& = DOSPOINTOLD&
  315.         ELSE
  316.             DOSPOINTOLD& = DOSPOINT&
  317.             DOSPOINT& = 0
  318.         ENDIF
  319.         GOTO CUSTINST
  320.     ELSEIF sz$ = "CHK4" THEN
  321.         CUSTOM4$ = GetListItem(CHECKSTATES$,4)
  322.         IF CUSTOM4$ = "ON" THEN
  323.             DOSDRV& = DOSDRVOLD&
  324.         ELSE
  325.             DOSDRVOLD& = DOSDRV&
  326.             DOSDRV& = 0
  327.         ENDIF
  328.         GOTO CUSTINST
  329.     ELSEIF sz$ = "CHK5" THEN
  330.         CUSTOM5$ = GetListItem(CHECKSTATES$,5)
  331.         IF CUSTOM5$ = "ON" THEN
  332.             ONHELP& = ONHELPOLD&
  333.         ELSE
  334.             ONHELPOLD& = ONHELP&
  335.             ONHELP& = 0
  336.         ENDIF
  337.         GOTO CUSTINST
  338.     ELSEIF sz$ = "CHK6" THEN
  339.         CUSTOM6$ = GetListItem(CHECKSTATES$,6)
  340.         IF CUSTOM6$ = "ON" THEN
  341.             MISCCOST& = MISCCOSTOLD&
  342.         ELSE
  343.             MISCCOSTOLD& = MISCCOST&
  344.             MISCCOST& = 0
  345.             MISC1$ = "OFF"
  346.             MISC2$ = "OFF"
  347.         END IF
  348.         GOTO CUSTINST
  349.     ELSEIF sz$ = "REACTIVATE" THEN
  350.         GOTO CUSTINST
  351.  
  352.     ELSEIF sz$ = "EXIT" THEN
  353.         ASKEXIT
  354.         GOTO CUSTINST
  355.  
  356.     ELSEIF sz$ = "BACK" THEN
  357.         x% = WinHelp(TKWIN%,SETUPINF$ + "PTSETUP.HLP", 1, 31)
  358.         GOTO CUSTINST
  359.     ELSE
  360.         GOTO CUSTINST
  361.     END IF
  362.  
  363. END SUB
  364. '*************************************************************************
  365.  
  366. '*************************************************************************
  367. '*************************************************************************
  368. SUB PointerOptions STATIC
  369.  
  370.     ReplaceListItem CHECKSTATES$, 1, POINTER1$ 
  371.     ReplaceListItem CHECKSTATES$, 2, POINTER2$
  372.     ReplaceListItem CHECKSTATES$, 3, POINTER3$
  373.     ReplaceListItem CHECKSTATES$, 4, POINTER4$
  374.     ReplaceListItem CHECKSTATES$, 5, POINTER5$
  375.     ReplaceListItem CHECKSTATES$, 6, POINTER6$
  376.     AddListItem CHECKSTATES$, POINTER7$
  377.     AddListItem CHECKSTATES$, POINTER8$
  378.  
  379.     ReplaceListItem STATUSTEXT$, 1, STR$(POINTA&)
  380.     ReplaceListItem STATUSTEXT$, 2, STR$(POINTB&)
  381.     ReplaceListItem STATUSTEXT$, 3, STR$(POINTC&)
  382.     ReplaceListItem STATUSTEXT$, 4, STR$(POINTD&)
  383.     ReplaceListItem STATUSTEXT$, 5, STR$(POINTE&)
  384.     ReplaceListItem STATUSTEXT$, 6, STR$(POINTF&)
  385.     ReplaceListItem STATUSTEXT$, 7, STR$(POINTG&)
  386.     ReplaceListItem STATUSTEXT$, 8, STR$(POINTH&)
  387.     
  388. SETPOINTER:
  389.  
  390.     SetDriveStatus
  391.  
  392.     sz$ = UIStartDlg(COMDLL$, POINTOPT, "FCustInstDlgProc", 0, "")
  393.  
  394.     IF sz$ = "CONTINUE" THEN
  395.         UIPop 1
  396.     ELSEIF sz$ = "CHK1" THEN
  397.         POINTER1$ = GetListItem(CHECKSTATES$,1)
  398.         SetPointStatus POINTER1$, "A"
  399.         IF POINTER1$ = "ON" THEN
  400.             ReplaceListItem STATUSTEXT$, 1, STR$(POINTA&)
  401.         ELSE
  402.             ReplaceListItem STATUSTEXT$, 1, "0"
  403.         ENDIF
  404.         GOTO SETPOINTER
  405.     ELSEIF sz$ = "CHK2" THEN
  406.         POINTER2$ = GetListItem(CHECKSTATES$,2)
  407.         SetPointStatus POINTER2$, "B"
  408.         IF POINTER2$ = "ON" THEN
  409.             ReplaceListItem STATUSTEXT$, 2, STR$(POINTB&)
  410.         ELSE
  411.             ReplaceListItem STATUSTEXT$, 2, "0"
  412.         ENDIF
  413.         GOTO SETPOINTER
  414.     ELSEIF sz$ = "CHK3" THEN
  415.         POINTER3$ = GetListItem(CHECKSTATES$,3)
  416.         SetPointStatus POINTER3$, "C"
  417.         IF POINTER3$ = "ON" THEN
  418.             ReplaceListItem STATUSTEXT$, 3, STR$(POINTC&)
  419.         ELSE
  420.             ReplaceListItem STATUSTEXT$, 3, "0"
  421.         ENDIF
  422.         GOTO SETPOINTER
  423.     ELSEIF sz$ = "CHK4" THEN
  424.         POINTER4$ = GetListItem(CHECKSTATES$,4)
  425.         SetPointStatus POINTER4$, "D"
  426.         IF POINTER4$ = "ON" THEN
  427.             ReplaceListItem STATUSTEXT$, 4, STR$(POINTD&)
  428.         ELSE
  429.             ReplaceListItem STATUSTEXT$, 4, "0"
  430.         ENDIF
  431.         GOTO SETPOINTER
  432.     ELSEIF sz$ = "CHK5" THEN
  433.         POINTER5$ = GetListItem(CHECKSTATES$,5)
  434.         SetPointStatus POINTER5$, "E"
  435.         IF POINTER5$ = "ON" THEN
  436.             ReplaceListItem STATUSTEXT$, 5, STR$(POINTE&)
  437.         ELSE
  438.             ReplaceListItem STATUSTEXT$, 5, "0"
  439.         ENDIF
  440.         GOTO SETPOINTER
  441.     ELSEIF sz$ = "CHK6" THEN
  442.         POINTER6$ = GetListItem(CHECKSTATES$,6)
  443.         SetPointStatus POINTER6$, "F"
  444.         IF POINTER6$ = "ON" THEN
  445.             ReplaceListItem STATUSTEXT$, 6, STR$(POINTF&)
  446.         ELSE
  447.             ReplaceListItem STATUSTEXT$, 6, "0"
  448.         ENDIF
  449.         GOTO SETPOINTER
  450.     ELSEIF sz$ = "CHK7" THEN
  451.         POINTER7$ = GetListItem(CHECKSTATES$,7)
  452.         SetPointStatus POINTER7$, "G"
  453.         IF POINTER7$ = "ON" THEN
  454.             ReplaceListItem STATUSTEXT$, 7, STR$(POINTG&)
  455.         ELSE
  456.             ReplaceListItem STATUSTEXT$, 7, "0"
  457.         ENDIF
  458.         GOTO SETPOINTER
  459.     ELSEIF sz$ = "CHK8" THEN
  460.         POINTER8$ = GetListItem(CHECKSTATES$,8)
  461.         SetPointStatus POINTER8$, "H"
  462.         IF POINTER8$ = "ON" THEN
  463.             ReplaceListItem STATUSTEXT$, 8, STR$(POINTH&)
  464.         ELSE
  465.             ReplaceListItem STATUSTEXT$, 8, "0"
  466.         ENDIF
  467.         GOTO SETPOINTER
  468.     ELSEIF sz$ = "EXIT" THEN
  469.         ASKEXIT
  470.         GOTO SETPOINTER
  471.     ELSEIF sz$ = "BACK" THEN
  472.         x% = WinHelp(TKWIN%,SETUPINF$ + "PTSETUP.HLP", 1, 33)
  473.         GOTO SETPOINTER
  474.     ELSE
  475.         GOTO SETPOINTER
  476.     END IF
  477.  
  478.     ReplaceListItem CHECKSTATES$, 1, CUSTOM1$ 
  479.     ReplaceListItem CHECKSTATES$, 2, CUSTOM2$
  480.     ReplaceListItem CHECKSTATES$, 3, CUSTOM3$
  481.     ReplaceListItem CHECKSTATES$, 4, CUSTOM4$
  482.     ReplaceListItem CHECKSTATES$, 5, CUSTOM5$
  483.     ReplaceListItem CHECKSTATES$, 6, CUSTOM6$
  484.  
  485. END SUB
  486. '*************************************************************************
  487.  
  488. '*************************************************************************
  489. '*************************************************************************
  490. SUB MiscOptions STATIC
  491.  
  492.     ReplaceListItem CHECKSTATES$, 1, MISC1$ 
  493.     ReplaceListItem CHECKSTATES$, 2, MISC2$ 
  494.     ReplaceListItem STATUSTEXT$, 1, STR$(MISCA&)
  495.     ReplaceListItem STATUSTEXT$, 2, STR$(MISCB&)
  496.  
  497. SETMISC:
  498.     SetDriveStatus
  499.     sz$ = UIStartDlg(COMDLL$, MISCOPT, "FCustInstDlgProc", 0, "")
  500.  
  501.     IF sz$ = "CONTINUE" THEN
  502.         UIPop 1
  503.     ELSEIF sz$ = "CHK1" THEN
  504.         MISC1$ = GetListItem(CHECKSTATES$,1)
  505.         SetMiscStatus MISC1$, "A"
  506.         IF MISC1$ = "ON" THEN
  507.             ReplaceListItem STATUSTEXT$, 1, STR$(MISCA&)
  508.         ELSE
  509.             ReplaceListItem STATUSTEXT$, 1, "0"
  510.         ENDIF
  511.         GOTO SETMISC
  512.     ELSEIF sz$ = "CHK2" THEN
  513.         MISC2$ = GetListItem(CHECKSTATES$,2)
  514.         SetMiscStatus MISC2$, "B"
  515.         IF MISC2$ = "ON" THEN
  516.             ReplaceListItem STATUSTEXT$, 2, STR$(MISCB&)
  517.         ELSE
  518.             ReplaceListItem STATUSTEXT$, 2, "0"
  519.         ENDIF
  520.         GOTO SETMISC
  521.     ELSEIF sz$ = "BACK" THEN
  522.         x% = WinHelp(TKWIN%,SETUPINF$ + "PTSETUP.HLP", 1, 34)
  523.         GOTO SETMISC
  524.     ELSEIF sz$ = "EXIT" THEN
  525.         ASKEXIT
  526.         GOTO SETMISC
  527.     ELSE
  528.         GOTO SETMISC
  529.     END IF
  530.  
  531.     IF MISC1$ = "ON" THEN
  532.         CUSTOM6$ = "ON"
  533.     ELSEIF MISC2$ = "ON" THEN
  534.         CUSTOM6$ = "ON"
  535.     ELSE
  536.         CUSTOM6$ = "OFF"
  537.         MISCCOST& = 0
  538.     END IF
  539.     ReplaceListItem CHECKSTATES$, 1, CUSTOM1$ 
  540.     ReplaceListItem CHECKSTATES$, 2, CUSTOM2$
  541.     AddListItem CHECKSTATES$, CUSTOM3$
  542.     AddListItem CHECKSTATES$, CUSTOM4$
  543.     AddListItem CHECKSTATES$, CUSTOM5$
  544.     AddListItem CHECKSTATES$, CUSTOM6$
  545.  
  546. END SUB
  547.  
  548. '*************************************************************************
  549. '*************************************************************************
  550. SUB FillCopyStates STATIC
  551.  
  552.     CHECKSTATES$ = "CheckItemsState"
  553.     STATUSTEXT$  = "StatusItemsText"
  554.     DRIVETEXT$   = "DriveStatusText"
  555.  
  556.     CUSTOM1$ = "ON"
  557.     CUSTOM2$ = "ON"
  558.     CUSTOM3$ = "ON"
  559.     CUSTOM4$ = "ON"
  560.     CUSTOM5$ = "ON"
  561.     CUSTOM6$ = "OFF"
  562.     POINTER1$ = "ON"
  563.     POINTER2$ = "ON"
  564.     POINTER3$ = "ON"
  565.     POINTER4$ = "ON"
  566.     POINTER5$ = "ON"
  567.     POINTER6$ = "ON"
  568.     POINTER7$ = "ON"
  569.     POINTER8$ = "ON"
  570.     MISC1$ = "OFF"
  571.     MISC2$ = "OFF"
  572.  
  573.     AddListItem CHECKSTATES$, CUSTOM1$
  574.     AddListItem CHECKSTATES$, CUSTOM2$
  575.     AddListItem CHECKSTATES$, CUSTOM3$
  576.     AddListItem CHECKSTATES$, CUSTOM4$
  577.     AddListItem CHECKSTATES$, CUSTOM5$
  578.     AddListItem CHECKSTATES$, CUSTOM6$
  579.     AddListItem CHECKSTATES$, POINTER7$
  580.     AddListItem CHECKSTATES$, POINTER8$
  581.  
  582.     FOR i% = 1 TO 3 STEP 1
  583.         AddListItem DRIVETEXT$, ""
  584.     NEXT i%
  585.  
  586.     FOR i% = 1 TO 8 STEP 1
  587.         AddListItem STATUSTEXT$, ""
  588.     NEXT i%
  589.  
  590.     COSTLIST& = 200000
  591.     MOTYPE$ = "Mo16"
  592.     
  593.     POINTA& = GetSectionKeySize(MOTYPE$, "A") + GetSectionKeySize("Cursor", "B") + GetSectionKeySize(MOTYPE$, "A") + 500000
  594.     POINTB& = GetSectionKeySize(MOTYPE$, "B")
  595.     POINTC& = GetSectionKeySize(MOTYPE$, "C")
  596.     POINTD& = GetSectionKeySize(MOTYPE$, "D")
  597.     POINTE& = GetSectionKeySize(MOTYPE$, "E")
  598.     POINTF& = GetSectionKeySize(MOTYPE$, "F") + GetSectionKeySize("Cursor", "A")
  599.     POINTG& = GetSectionKeySize(MOTYPE$, "G")
  600.     POINTH& = GetSectionKeySize(MOTYPE$, "H")
  601.     POINTCOST& = POINTA& + POINTB& + POINTC& + POINTD& + POINTE& + POINTF& + POINTG& +POINTH&
  602.     TOOLCOST& = GetSectionKeySize(MOTYPE$, "T") + GetSectionKeySize(MOTYPE$, "U")
  603.     DOSDRV& = GetSectionKeySize("MiscDos", "A") + GetSectionKeySize("MiscDos", "ZA")    
  604.     DOSPOINT& = GetSectionKeySize("MiscDos", "B") + GetSectionKeySize("DosLan", "A")
  605.     ONHELP& = GetSectionKeySize("Common", "A") + GetSectionKeySize("Common", "AA")
  606.     MISCA& = GetSectionKeySize("Misc", "A")
  607.     MISCB& = GetSectionKeySize("Misc", "B")
  608.     MISCCOST& = 0
  609.     MISCCOSTOLD& = 0
  610.  
  611. END SUB
  612.